package com.mdb.open.trade.domain.bo.trade;

import com.mdb.bc.api.data.DataObjectBase;
import com.mdb.open.common.enums.trade.status.InwardMerRemitStatusEnum;
import com.mdb.open.common.enums.trade.status.InwardProdRemitStatusEnum;
import com.mdb.open.common.enums.trade.status.InwardRemitCreditStatusEnum;
import com.mdb.open.common.enums.trade.status.InwardRemitStatusEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;

/**
 * @description:
 * @author: you.yichao
 * @create: 2019-08-01 18:46
 **/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="UpdateInwardRemitBo", description="更新汇入报文Bo对象")
public class UpdateInwardRemitBo extends DataObjectBase {

    /**
     * 客户编码
     */
    @ApiModelProperty(value = "客户编码")
    @NotBlank(message = "客户编码不允许为空")
    private String customerCode;

    /**
     * 汇款编号
     */
    @ApiModelProperty(value = "汇款编号")
    @NotBlank(message = "汇款编号不允许为空")
    private String remitNo;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    private InwardRemitStatusEnum status;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    private InwardRemitStatusEnum oldStatus;

    /**
     * 产品状态
     */
    @ApiModelProperty(value = "产品状态")
    private InwardProdRemitStatusEnum prodStatus;

    /**
     * 入账状态
     */
    @ApiModelProperty(value = "入账状态")
    private InwardRemitCreditStatusEnum creditStatus;

    /**
     * 产品状态
     */
    @ApiModelProperty(value = "产品状态")
    private InwardProdRemitStatusEnum oldProdStatus;

    /**
     * 商户状态
     */
    @ApiModelProperty(value = "商户状态")
    private InwardMerRemitStatusEnum merStatus;

    /**
     * 商户状态
     */
    @ApiModelProperty(value = "商户状态")
    private InwardMerRemitStatusEnum oldMerStatus;

    /**
     * 入账状态
     */
    @ApiModelProperty(value = "入账状态")
    private InwardRemitCreditStatusEnum oldCreditStatus;
}
